package com.navi.loaddata.core.gpEntity;

import java.sql.Timestamp;
import javax.persistence.Basic;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;

/**
 * @auther Matthew
 * @Date 2018/4/2
 */
@Entity
@Table(name = "edc_config", schema = "sor", catalog = "qmsprd")
public class EdcConfig {

  private Integer edcConfigKey;
  private String shopId;
  private String lineId;
  private String opeId;
  private String subeqId;
  private String itemName;
  private String siteName;
  private String siteType;
  private String resultColumn;
  private Short rowNo;
  private String delFlg;
  private String evtUser;
  private Timestamp evtTimestamp;

  @Id
  @Column(name = "edc_config_key", nullable = false)
  public Integer getEdcConfigKey() {
    return edcConfigKey;
  }

  public void setEdcConfigKey(Integer edcConfigKey) {
    this.edcConfigKey = edcConfigKey;
  }

  @Basic
  @Column(name = "shop_id", nullable = true, length = 10)
  public String getShopId() {
    return shopId;
  }

  public void setShopId(String shopId) {
    this.shopId = shopId;
  }

  @Basic
  @Column(name = "line_id", nullable = true, length = 40)
  public String getLineId() {
    return lineId;
  }

  public void setLineId(String lineId) {
    this.lineId = lineId;
  }

  @Basic
  @Column(name = "ope_id", nullable = true, length = 40)
  public String getOpeId() {
    return opeId;
  }

  public void setOpeId(String opeId) {
    this.opeId = opeId;
  }

  @Basic
  @Column(name = "subeq_id", nullable = true, length = 400)
  public String getSubeqId() {
    return subeqId;
  }

  public void setSubeqId(String subeqId) {
    this.subeqId = subeqId;
  }

  @Basic
  @Column(name = "item_name", nullable = true, length = 40)
  public String getItemName() {
    return itemName;
  }

  public void setItemName(String itemName) {
    this.itemName = itemName;
  }

  @Basic
  @Column(name = "site_name", nullable = true, length = 40)
  public String getSiteName() {
    return siteName;
  }

  public void setSiteName(String siteName) {
    this.siteName = siteName;
  }

  @Basic
  @Column(name = "site_type", nullable = true, length = 40)
  public String getSiteType() {
    return siteType;
  }

  public void setSiteType(String siteType) {
    this.siteType = siteType;
  }

  @Basic
  @Column(name = "result_column", nullable = true, length = 40)
  public String getResultColumn() {
    return resultColumn;
  }

  public void setResultColumn(String resultColumn) {
    this.resultColumn = resultColumn;
  }

  @Basic
  @Column(name = "row_no", nullable = true)
  public Short getRowNo() {
    return rowNo;
  }

  public void setRowNo(Short rowNo) {
    this.rowNo = rowNo;
  }

  @Basic
  @Column(name = "del_flg", nullable = true, length = 1)
  public String getDelFlg() {
    return delFlg;
  }

  public void setDelFlg(String delFlg) {
    this.delFlg = delFlg;
  }

  @Basic
  @Column(name = "evt_user", nullable = true, length = 20)
  public String getEvtUser() {
    return evtUser;
  }

  public void setEvtUser(String evtUser) {
    this.evtUser = evtUser;
  }

  @Basic
  @Column(name = "evt_timestamp", nullable = true)
  public Timestamp getEvtTimestamp() {
    return evtTimestamp;
  }

  public void setEvtTimestamp(Timestamp evtTimestamp) {
    this.evtTimestamp = evtTimestamp;
  }

  @Override
  public boolean equals(Object o) {
    if (this == o) {
      return true;
    }
    if (o == null || getClass() != o.getClass()) {
      return false;
    }

    EdcConfig edcConfig = (EdcConfig) o;

    if (edcConfigKey != null ? !edcConfigKey.equals(edcConfig.edcConfigKey) : edcConfig.edcConfigKey != null) {
      return false;
    }
    if (shopId != null ? !shopId.equals(edcConfig.shopId) : edcConfig.shopId != null) {
      return false;
    }
    if (lineId != null ? !lineId.equals(edcConfig.lineId) : edcConfig.lineId != null) {
      return false;
    }
    if (opeId != null ? !opeId.equals(edcConfig.opeId) : edcConfig.opeId != null) {
      return false;
    }
    if (subeqId != null ? !subeqId.equals(edcConfig.subeqId) : edcConfig.subeqId != null) {
      return false;
    }
    if (itemName != null ? !itemName.equals(edcConfig.itemName) : edcConfig.itemName != null) {
      return false;
    }
    if (siteName != null ? !siteName.equals(edcConfig.siteName) : edcConfig.siteName != null) {
      return false;
    }
    if (siteType != null ? !siteType.equals(edcConfig.siteType) : edcConfig.siteType != null) {
      return false;
    }
    if (resultColumn != null ? !resultColumn.equals(edcConfig.resultColumn) : edcConfig.resultColumn != null) {
      return false;
    }
    if (rowNo != null ? !rowNo.equals(edcConfig.rowNo) : edcConfig.rowNo != null) {
      return false;
    }
    if (delFlg != null ? !delFlg.equals(edcConfig.delFlg) : edcConfig.delFlg != null) {
      return false;
    }
    if (evtUser != null ? !evtUser.equals(edcConfig.evtUser) : edcConfig.evtUser != null) {
      return false;
    }
    if (evtTimestamp != null ? !evtTimestamp.equals(edcConfig.evtTimestamp) : edcConfig.evtTimestamp != null) {
      return false;
    }

    return true;
  }

  @Override
  public int hashCode() {
    int result = edcConfigKey != null ? edcConfigKey.hashCode() : 0;
    result = 31 * result + (shopId != null ? shopId.hashCode() : 0);
    result = 31 * result + (lineId != null ? lineId.hashCode() : 0);
    result = 31 * result + (opeId != null ? opeId.hashCode() : 0);
    result = 31 * result + (subeqId != null ? subeqId.hashCode() : 0);
    result = 31 * result + (itemName != null ? itemName.hashCode() : 0);
    result = 31 * result + (siteName != null ? siteName.hashCode() : 0);
    result = 31 * result + (siteType != null ? siteType.hashCode() : 0);
    result = 31 * result + (resultColumn != null ? resultColumn.hashCode() : 0);
    result = 31 * result + (rowNo != null ? rowNo.hashCode() : 0);
    result = 31 * result + (delFlg != null ? delFlg.hashCode() : 0);
    result = 31 * result + (evtUser != null ? evtUser.hashCode() : 0);
    result = 31 * result + (evtTimestamp != null ? evtTimestamp.hashCode() : 0);
    return result;
  }
}
